Трехмерная треугольная фильтрация
Процедура позволяет разделять 3-D поля на компоненты треугольным фильтром. Положенный в ее основу алгоритм аналогичен методу обратных расстояний (Inverse Distance).
Алгоритм
Весовые коэффициенты фильтра определяются размерами окна, которое имеет вид шара или трехосного эллипсоида. Максимальное значение имеет коэффициент, расположенный в центре окна, минимальные - на поверхности. Соотношение максимального и минимального коэффициента - 10 к 1. Величина оставшихся коэффициентов изменяется линейно в зависимости от расстояния до центра окна. Полученные весовые коэффициенты нормируются так, чтобы их сумма была равна 1. Такая нормировка необходима для того, чтобы профильтрованное поле не отличалось по уровню от исходного.
Для каждой точки исходного поля производится свертка значений поля в скользящем трехмерном окне фильтрации с весовыми коэффициентами треугольного фильтра. Результат свертки записывается в Профильтрованное поле, разность между Исходным и Профильтрованным полем - в Остаточное. Выходные значения могут быть неопределенными в двух случаях: когда значение исходного поля в центре окна не определено (пропуск) или когда в окне много пропусков (число пропущенных значений в семь раз больше числа оставшихся).
Параметры
Для определения обрабатываемого поля необходимо выбрать нужное свойство из числа существующих в текущей ТОС (см. Рис. 1), параметр Свойство на панели Исходное поле.
Рис. 1. Выбор параметров треугольного фильтра
Окно выбирается из списка предопределенных окон на панели Параметры окна (см. Редактор Окон 3D ).
Параметр Число выбрасываемых точек позволяет адаптировать процедуру фильтрации к особенностям обрабатываемого поля. Если параметр равен нулю, то производится обычная свертка значений поля в окне с весовыми коэффициентами фильтра. Если этот параметр больше нуля, то перед сверткой сначала поле в окне аппроксимируется полиномом третьего порядка, затем из окна удаляется указанное число точек с максимальным отклонением поля в окне от аппроксимирующего полинома. Таким образом "резкие выбросы" будут просто исключены из процесса фильтрации. Значение целочисленное неотрицательное, умолчание – 0. Изменение параметра ведет к увеличению времени счета тем большему, чем больше размер окна. Если параметр выбран число точек в окне после выбрасывания не должно быть меньше 27.
Для определения Профильтрованного поля необходимо определить Имя файла ТОС и Свойство на панели Результат треугольной фильтрации . По умолчанию используется имя файла текущей ТОС.
Остаточное поле определяется аналогично профильтрованному.
В зависимости от особенностей решаемой задачи, пользователь может отказаться от расчета одного из выходных полей: профильтрованного или остаточного - для этого достаточно снять отметку (флажок) о расчете соответствующей компоненты, которая находится слева от ее названия.
В результате выполнения процедуры в зависимости от заданных пользователем имен выходных ТОС создаются новые ТОС, либо дописываются новые свойства к уже существующим ТОС, в которых размещаются профильтрованное и остаточное поля. Создаваемые ТОС наследуют размеры и параметры сети исходной (текущей) ТОС.